package org.pageley.games.sanctuary.domain.entity.creature;

import org.pageley.games.sanctuary.domain.Direction;
import org.pageley.games.sanctuary.domain.Location;
import org.pageley.games.sanctuary.domain.entity.Entity;

public interface Creature extends Entity {


	void move(Direction direction);

	void moveTo(Location location);

	int getActionPointsRemaining();
	
	CreatureProfile getProfile();

	int getWeaponSkill();

	double chanceToHit(Creature other);

	int attack(Creature other);

	int getHitPointsRemaining();

	void hit(int damage);

	boolean isDead();

}
